[INFO] cloning repository https://github.com/Lahutsin/way-balancer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Lahutsin/way-balancer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLahutsin%2Fway-balancer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLahutsin%2Fway-balancer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] ebd7b88f440b60c258a84b447a8f830516f9e959
[INFO] fixing Lahutsin/way-balancer against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLahutsin%2Fway-balancer" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/Lahutsin/way-balancer
[INFO] finished tweaking git repo https://github.com/Lahutsin/way-balancer
[INFO] tweaked toml for git repo https://github.com/Lahutsin/way-balancer written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Lahutsin/way-balancer on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Lahutsin/way-balancer already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290
[INFO] running `Command { std: "docker" "start" "92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating crates/runtime/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/config-model/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/net-core/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/proto-http/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/observability/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/proto-tls/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/test-support/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/admin-api/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/k8s-integration/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating binaries/lb-dataplane/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating binaries/lb-ctl/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Migrating binaries/lb-k8s-controller/Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.184
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling aws-lc-rs v1.16.2
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking zerocopy v0.8.48
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]    Compiling cc v1.2.59
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking rusticata-macros v4.1.0
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking asn1-rs v0.6.2
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling aws-lc-sys v0.39.1
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking lb-net-core v0.1.0 (/opt/rustwide/workdir/crates/net-core)
[INFO] [stderr]    Migrating crates/net-core/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking tokio v1.51.1
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling quinn-udp v0.5.14
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]     Checking siphasher v1.0.2
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking oid-registry v0.7.1
[INFO] [stderr]     Checking der-parser v9.0.0
[INFO] [stderr]    Compiling quinn v0.11.9
[INFO] [stderr]     Checking rustc-hash v2.1.2
[INFO] [stderr]     Checking lru-slab v0.1.2
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking indexmap v2.13.1
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking simple_asn1 v0.6.4
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking lb-observability v0.1.0 (/opt/rustwide/workdir/crates/observability)
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Migrating crates/observability/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking yasna v0.5.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]     Checking fastbloom v0.14.1
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking lb-proto-http v0.1.0 (/opt/rustwide/workdir/crates/proto-http)
[INFO] [stderr]    Migrating crates/proto-http/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking h3 v0.0.8
[INFO] [stderr]     Checking lb-config-model v0.1.0 (/opt/rustwide/workdir/crates/config-model)
[INFO] [stderr]    Migrating crates/config-model/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking x509-parser v0.16.0
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking jsonwebtoken v9.3.1
[INFO] [stderr]     Checking rcgen v0.13.2
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking lb-proto-tls v0.1.0 (/opt/rustwide/workdir/crates/proto-tls)
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking proptest v1.11.0
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]    Migrating crates/proto-tls/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]    Migrating crates/proto-http/tests/property_tests.rs from 2021 edition to 2024
[INFO] [stderr]     Checking rustls-webpki v0.103.12
[INFO] [stderr]     Checking rustls-platform-verifier v0.6.2
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking quinn-proto v0.11.14
[INFO] [stderr]     Checking h3-quinn v0.0.10
[INFO] [stderr]     Checking lb-runtime v0.1.0 (/opt/rustwide/workdir/crates/runtime)
[INFO] [stderr]    Migrating crates/runtime/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/runtime/src/http2_proxy/body_relay.rs (2 fixes)
[INFO] [stderr]        Fixed crates/runtime/src/lib.rs (1 fix)
[INFO] [stderr]        Fixed crates/runtime/src/http1_proxy/connection_proxy.rs (1 fix)
[INFO] [stderr]        Fixed crates/runtime/src/http2_proxy/stream_forwarding.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/hedging.rs:137:11
[INFO] [stdout]     |
[INFO] [stdout]  59 |     let mut primary_handle = tokio::spawn(primary_attempt());
[INFO] [stdout]     |         ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `primary_handle` calls a custom destructor
[INFO] [stdout]     |         `primary_handle` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |     let (winner, first_error) = tokio::select! {
[INFO] [stdout]     |                  -----------
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  `first_error` calls a custom destructor
[INFO] [stdout]     |                  `first_error` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 137 |     match hedge_handle.await.expect("hedge task must not panic") {
[INFO] [stdout]     |           ^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |           |            |
[INFO] [stdout]     |           |            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 147 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `primary_handle` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/hedging.rs:137:24
[INFO] [stdout]     |
[INFO] [stdout]  59 |     let mut primary_handle = tokio::spawn(primary_attempt());
[INFO] [stdout]     |         ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `primary_handle` calls a custom destructor
[INFO] [stdout]     |         `primary_handle` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |     let (winner, first_error) = tokio::select! {
[INFO] [stdout]     |                  -----------
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  `first_error` calls a custom destructor
[INFO] [stdout]     |                  `first_error` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 137 |     match hedge_handle.await.expect("hedge task must not panic") {
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 147 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `primary_handle` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/stream_forwarding.rs:333:27
[INFO] [stdout]      |
[INFO] [stdout]  296 |                   let (upstream_client, had_prior_successful_stream) = match upstream_clients
[INFO] [stdout]      |      __________________---------------_________________________________-_____-
[INFO] [stdout]      |  ___|__________________|_______________________________________________|
[INFO] [stdout]      | |   |                  |
[INFO] [stdout]      | |   |                  `upstream_client` calls a custom destructor
[INFO] [stdout]      | |   |                  `upstream_client` will be dropped later as of Edition 2024
[INFO] [stdout]  297 | |   |                 .ensure_client(&selected_upstream.target, &effective_timeouts)
[INFO] [stdout]  298 | |   |                 .await
[INFO] [stdout]      | |   |                  -----
[INFO] [stdout]      | |   |                  |   |
[INFO] [stdout]      | |   |                  |   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |   |                  |   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |   |__________________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                      |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                      `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  327 | |                 };
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |_________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  328 |
[INFO] [stdout]  329 |                   let upstream_request =
[INFO] [stdout]      |                       ----------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `upstream_request` calls a custom destructor
[INFO] [stdout]      |                       `upstream_request` will be dropped later as of Edition 2024
[INFO] [stdout]  330 |                       match retryable_upstream_request.clone() { Some(upstream_request) => {
[INFO] [stdout]      |                             ----------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  333 |                           match build_upstream_request(
[INFO] [stdout]      |      ___________________________^
[INFO] [stdout]      |     |___________________________|
[INFO] [stdout]  334 |     |                         &request,
[INFO] [stdout]  335 |     |                         request_host_override.as_deref(),
[INFO] [stdout]  336 |     |                         effective_client_ip,
[INFO] [stdout]  337 |     |                         selected_upstream.target.address,
[INFO] [stdout]  338 |     |                     ) {
[INFO] [stdout]      |     |                     ^
[INFO] [stdout]      |     |_____________________|
[INFO] [stdout]      |     |_____________________this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                           up until Edition 2021 `#12` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  347 |     |                 }};
[INFO] [stdout]      |     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...        |
[INFO] [stdout]  351 |     |             let mut send_request = upstream_client.send_request.lock().await;
[INFO] [stdout]      |     |                                    -----------------------------------------
[INFO] [stdout]      |     |                                    |                                   |
[INFO] [stdout]      |     |                                    |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |     |                                    |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |     |                                    this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |     |                                    `#5` will be dropped later as of Edition 2024
[INFO] [stdout]  352 |     |             if let Err(error) = poll_fn(|cx| send_request.poll_ready(cx)).await {
[INFO] [stdout]      |     |                        -----    -----------------------------------------------
[INFO] [stdout]      |     |                        |        |                                         |
[INFO] [stdout]      |     |                        |        |                                         this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |     |                        |        |                                         `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |     |                        |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |     |                        |        `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |     |                        `error` calls a custom destructor
[INFO] [stdout]      |     |                        `error` will be dropped later as of Edition 2024
[INFO] [stdout]  353 |     |                 drop(send_request);
[INFO] [stdout]  354 |     |                 upstream_clients.remove_client(&selected_upstream.target).await;
[INFO] [stdout]      |     |                 ---------------------------------------------------------------
[INFO] [stdout]      |     |                 |
[INFO] [stdout]      |     |                 this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |     |                 `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...        |
[INFO] [stdout]  396 |     |                 Err(error) => {
[INFO] [stdout]      |     |                     -----
[INFO] [stdout]      |     |                     |
[INFO] [stdout]      |     |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |     |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  397 |     |                     drop(send_request);
[INFO] [stdout]  398 |     |                     upstream_clients.remove_client(&selected_upstream.target).await;
[INFO] [stdout]      |     |                     ---------------------------------------------------------------
[INFO] [stdout]      |     |                     |
[INFO] [stdout]      |     |                     this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |     |                     `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#12` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout]      = note: `upstream_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `upstream_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `error` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/stream_forwarding.rs:384:19
[INFO] [stdout]      |
[INFO] [stdout]  296 |             let (upstream_client, had_prior_successful_stream) = match upstream_clients
[INFO] [stdout]      |                  ---------------
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  `upstream_client` calls a custom destructor
[INFO] [stdout]      |                  `upstream_client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  384 |             match send_request.send_request(upstream_request, request_end_stream) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  428 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:75:9
[INFO] [stdout]      |
[INFO] [stdout]   75 |           time::timeout(idle_timeout, recv_stream.data()).await.map_err(|_| match direction {
[INFO] [stdout]      |           ^----------------------------------------------------
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `__awaitee` calls a custom destructor
[INFO] [stdout]      |  _________`__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |
[INFO] [stdout]   76 | |             StreamBodyDirection::Request => {
[INFO] [stdout]   77 | |                 StreamForwardError::IdleTimeout(StreamIdlePhase::RequestBody)
[INFO] [stdout] ...    |
[INFO] [stdout]   82 | |         })?
[INFO] [stdout]      | |           ^
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   83 |       {
[INFO] [stdout]   84 |           let chunk = chunk.map_err(|_| match direction {
[INFO] [stdout]      |  _____________-----___-
[INFO] [stdout]      |  _____________|_______|
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `chunk` calls a custom destructor
[INFO] [stdout]      | |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]   85 | |             StreamBodyDirection::Request => StreamForwardError::RequestBody,
[INFO] [stdout]   86 | |             StreamBodyDirection::Response => StreamForwardError::ResponseBody,
[INFO] [stdout]   87 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  100 | |         send_bytes_chunked(send_stream, chunk, false, direction).await?;
[INFO] [stdout]      | |         --------------------------------------------------------------
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  101 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:10:9
[INFO] [stdout]      |
[INFO] [stdout]   10 |           time::timeout(idle_timeout, recv_stream.data()).await.map_err(|_| match direction {
[INFO] [stdout]      |           ^----------------------------------------------------
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `__awaitee` calls a custom destructor
[INFO] [stdout]      |  _________`__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |
[INFO] [stdout]   11 | |             StreamBodyDirection::Request => {
[INFO] [stdout]   12 | |                 StreamForwardError::IdleTimeout(StreamIdlePhase::RequestBody)
[INFO] [stdout] ...    |
[INFO] [stdout]   17 | |         })?
[INFO] [stdout]      | |           ^
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   18 |       {
[INFO] [stdout]   19 |           let chunk = chunk.map_err(|_| match direction {
[INFO] [stdout]      |  _____________-----___-
[INFO] [stdout]      |  _____________|_______|
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `chunk` calls a custom destructor
[INFO] [stdout]      | |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]   20 | |             StreamBodyDirection::Request => StreamForwardError::RequestBody,
[INFO] [stdout]   21 | |             StreamBodyDirection::Response => StreamForwardError::ResponseBody,
[INFO] [stdout]   22 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   34 | |         send_bytes_chunked(send_stream, chunk, false, direction).await?;
[INFO] [stdout]      | |         --------------------------------------------------------------
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout]   35 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:142:9
[INFO] [stdout]      |
[INFO] [stdout]  142 |           time::timeout(idle_timeout, recv_stream.data()).await.map_err(|_| match direction {
[INFO] [stdout]      |           ^----------------------------------------------------
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `__awaitee` calls a custom destructor
[INFO] [stdout]      |  _________`__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |
[INFO] [stdout]  143 | |             StreamBodyDirection::Request => {
[INFO] [stdout]  144 | |                 StreamForwardError::IdleTimeout(StreamIdlePhase::RequestBody)
[INFO] [stdout] ...    |
[INFO] [stdout]  149 | |         })?
[INFO] [stdout]      | |           ^
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  150 |       {
[INFO] [stdout]  151 |           let chunk = chunk.map_err(|_| match direction {
[INFO] [stdout]      |  _____________-----___-
[INFO] [stdout]      |  _____________|_______|
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `chunk` calls a custom destructor
[INFO] [stdout]      | |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]  152 | |             StreamBodyDirection::Request => StreamForwardError::RequestBody,
[INFO] [stdout]  153 | |             StreamBodyDirection::Response => StreamForwardError::ResponseBody,
[INFO] [stdout]  154 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  167 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/connection_proxy.rs:41:30
[INFO] [stdout]      |
[INFO] [stdout]   41 |       while let Some(result) = downstream_connection.accept().await {
[INFO] [stdout]      |                      ------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                      |         |                              |
[INFO] [stdout]      |                      |         |                              this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                      |         |                              up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                      |         |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      |         |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                      |         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                      |         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                      |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                      |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                      `result` calls a custom destructor
[INFO] [stdout]      |                      `result` will be dropped later as of Edition 2024
[INFO] [stdout]   42 |           let (request, respond) = match result {
[INFO] [stdout]      |  __________________________________-
[INFO] [stdout]   43 | |             Ok(stream) => stream,
[INFO] [stdout]   44 | |             Err(error) => {
[INFO] [stdout]      | |                 -----
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `error` calls a custom destructor
[INFO] [stdout]      | |                 `error` will be dropped later as of Edition 2024
[INFO] [stdout]   45 | |                 let had_traffic = metrics.request_count.load(Ordering::SeqCst) > 0;
[INFO] [stdout] ...    |
[INFO] [stdout]   52 | |         };
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   58 | /         stream_tasks.spawn(async move {
[INFO] [stdout]   59 | |             handle_http2_stream(
[INFO] [stdout]   60 | |                 request,
[INFO] [stdout]   61 | |                 respond,
[INFO] [stdout] ...    |
[INFO] [stdout]   68 | |             .await;
[INFO] [stdout]   69 | |         });
[INFO] [stdout]      | |          -
[INFO] [stdout]      | |__________|
[INFO] [stdout]      | |__________this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]   70 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `error` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/http2_proxy/connection_proxy.rs:72:30
[INFO] [stdout]     |
[INFO] [stdout]  72 |     while let Some(result) = stream_tasks.join_next().await {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                              |                        |
[INFO] [stdout]     |                              |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                              |                        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                              |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                              `__awaitee` calls a custom destructor
[INFO] [stdout]     |                              `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  73 |         result.map_err(Http2ProxyError::StreamTask)?;
[INFO] [stdout]     |         --------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |         `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  74 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:268:29
[INFO] [stdout]      |
[INFO] [stdout]  268 |         while let Some(chunk) = time::timeout(idle_timeout, recv_stream.data())
[INFO] [stdout]      |    _____________________________^
[INFO] [stdout]      |  _|_____________________________|
[INFO] [stdout]  269 | | |         .await
[INFO] [stdout]      | | |          -----
[INFO] [stdout]      | | |          |   |
[INFO] [stdout]      | | |__________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |            |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |            up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  270 | |           .map_err(|_| StreamForwardError::IdleTimeout(StreamIdlePhase::ResponseBody))?
[INFO] [stdout]      | |                                                                                       ^
[INFO] [stdout]      | |                                                                                       |
[INFO] [stdout]      | |                                                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |_______________________________________________________________________________________this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                                                         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  271 |         {
[INFO] [stdout]  272 |             let chunk = chunk.map_err(|_| StreamForwardError::ResponseBody)?;
[INFO] [stdout]      |                 -----   ----------------------------------------------------
[INFO] [stdout]      |                 |       |
[INFO] [stdout]      |                 |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 `chunk` calls a custom destructor
[INFO] [stdout]      |                 `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  277 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/extension_surface.rs:428:11
[INFO] [stdout]     |
[INFO] [stdout] 422 |     let (sender, receiver) = mpsc::channel();
[INFO] [stdout]     |                  --------
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  `receiver` calls a custom destructor
[INFO] [stdout]     |                  `receiver` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 428 |     match receiver.recv_timeout(timeout) {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 445 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `receiver` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/mpmc/mod.rs:1411:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/http1_proxy/cache_lookup.rs:64:11
[INFO] [stdout]     |
[INFO] [stdout]  29 |     let key_material = match build_http_cache_key_material(
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `key_material` calls a custom destructor
[INFO] [stdout]     |         `key_material` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  59 |     let storage_key = match key_material.storage_key() {
[INFO] [stdout]     |         -----------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `storage_key` calls a custom destructor
[INFO] [stdout]     |         `storage_key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  64 |     match response_cache.store.lookup(now, &storage_key) {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 105 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_material` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `storage_key` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/http_cache.rs:845:35
[INFO] [stdout]     |
[INFO] [stdout] 845 |             if let Some(record) = state.entries.remove(key) {
[INFO] [stdout]     |                         ------    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                         |         |
[INFO] [stdout]     |                         |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         `record` calls a custom destructor
[INFO] [stdout]     |                         `record` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 848 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `record` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http_cache.rs:1025:31
[INFO] [stdout]      |
[INFO] [stdout] 1022 |         let Some(key) = oldest_entry_key(state) else {
[INFO] [stdout]      |                  ---
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  `key` calls a custom destructor
[INFO] [stdout]      |                  `key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1025 |         if let Some(record) = state.entries.remove(&key) {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1029 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking lb-admin-api v0.1.0 (/opt/rustwide/workdir/crates/admin-api)
[INFO] [stderr]    Migrating crates/admin-api/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]     Checking lb-test-support v0.1.0 (/opt/rustwide/workdir/crates/test-support)
[INFO] [stderr]     Checking lb-k8s-integration v0.1.0 (/opt/rustwide/workdir/crates/k8s-integration)
[INFO] [stderr]     Checking lb-ctl v0.1.0 (/opt/rustwide/workdir/binaries/lb-ctl)
[INFO] [stderr]     Checking lb-dataplane v0.1.0 (/opt/rustwide/workdir/binaries/lb-dataplane)
[INFO] [stderr]    Migrating crates/test-support/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/k8s-integration/src/lib.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating binaries/lb-ctl/src/main.rs from 2021 edition to 2024
[INFO] [stderr]     Checking lb-k8s-controller v0.1.0 (/opt/rustwide/workdir/binaries/lb-k8s-controller)
[INFO] [stderr]    Migrating binaries/lb-dataplane/src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/http3.rs:141:32
[INFO] [stdout]     |
[INFO] [stdout] 141 |       while let Some(resolver) = h3_conn.accept().await.map_err(io::Error::other)? {
[INFO] [stdout]     |                                  ----------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |                |
[INFO] [stdout]     |                                  |                this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                                  |                up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                  |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                  |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                  this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                                  up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                  this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                                  up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                  `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                  `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 142 |           let (request, mut stream) = resolver.resolve_request().await.map_err(io::Error::other)?;
[INFO] [stdout]     |                         ----------    -----------------------------------------------------------
[INFO] [stdout]     |                         |             |                          |
[INFO] [stdout]     |                         |             |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                         |             |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                         |             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                         |             `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `stream` calls a custom destructor
[INFO] [stdout]     |                         `stream` will be dropped later as of Edition 2024
[INFO] [stdout] 143 |           request_count += 1;
[INFO] [stdout] 144 | /         handle_http3_request(listener_name, state, &proxy, remote_addr, request, &mut stream)
[INFO] [stdout] 145 | |             .await?;
[INFO] [stdout]     | |                  -
[INFO] [stdout]     | |                  |
[INFO] [stdout]     | |__________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 146 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `stream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/http3.rs:185:33
[INFO] [stdout]     |
[INFO] [stdout] 185 |     while let Some(mut chunk) = stream.recv_data().await.map_err(io::Error::other)? {
[INFO] [stdout]     |                    ---------    ------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                    |            |                  |
[INFO] [stdout]     |                    |            |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                    |            |                  up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    |            |                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                    |            |                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                    |            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                    |            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    |            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                    |            up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    |            `__awaitee` calls a custom destructor
[INFO] [stdout]     |                    |            `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                    `chunk` calls a custom destructor
[INFO] [stdout]     |                    `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 186 |         let chunk_bytes = chunk.copy_to_bytes(chunk.remaining());
[INFO] [stdout]     |             -----------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `chunk_bytes` calls a custom destructor
[INFO] [stdout]     |             `chunk_bytes` will be dropped later as of Edition 2024
[INFO] [stdout] 187 |         request_body.extend_from_slice(&chunk_bytes);
[INFO] [stdout] 188 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `chunk_bytes` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:257:27
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]     |                         ----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `protection` calls a custom destructor
[INFO] [stdout]     |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout] 257 |                     match protection.try_acquire_source(downstream_addr) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 268 |                 };
[INFO] [stdout]     |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> crates/runtime/src/source_guards.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl Drop for SourceQuotaLease {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:271:27
[INFO] [stdout]      |
[INFO] [stdout]  270 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]      |                         ----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `protection` calls a custom destructor
[INFO] [stdout]      |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout]  271 |                     match protection.try_acquire_handshake() {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  283 |                 };
[INFO] [stdout]      |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/semaphore.rs:1202:1
[INFO] [stdout]      |
[INFO] [stdout] 1202 | impl Drop for OwnedSemaphorePermit {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:587:6
[INFO] [stdout]     |
[INFO] [stdout] 571 |     let acceptor = TlsAcceptor::from(Arc::clone(&config.tls_server_config));
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `acceptor` calls a custom destructor
[INFO] [stdout]     |         `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 587 |     .await
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout]     |      |
[INFO] [stdout]     |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 588 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/supervisor.rs:954:23
[INFO] [stdout]     |
[INFO] [stdout] 941 |             (shared_proxy, admin_tls_status),
[INFO] [stdout]     |              ------------
[INFO] [stdout]     |              |
[INFO] [stdout]     |              `shared_proxy` calls a custom destructor
[INFO] [stdout]     |              `shared_proxy` will be dropped later as of Edition 2024
[INFO] [stdout] 942 |             lifecycle,
[INFO] [stdout] 943 |         ) in listeners
[INFO] [stdout]     |              ---------
[INFO] [stdout]     |              |
[INFO] [stdout]     |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 951 |             let abuse_snapshot = abuse_protection.read().await.snapshot();
[INFO] [stdout]     |                                  -----------------------------
[INFO] [stdout]     |                                  |                       |
[INFO] [stdout]     |                                  |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                  |                       `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                  `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                  `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 952 |             let abuse_policy = abuse_policy.read().await.clone();
[INFO] [stdout]     |                                -------------------------
[INFO] [stdout]     |                                |                   |
[INFO] [stdout]     |                                |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                                |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                `#5` will be dropped later as of Edition 2024
[INFO] [stdout] 953 |             let tls = if let Some(shared_proxy) = shared_proxy {
[INFO] [stdout]     |                                   ------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                                   `#7` will be dropped later as of Edition 2024
[INFO] [stdout] 954 |                 match shared_proxy.read().await.clone() {
[INFO] [stdout]     |                       -------------------------^^^^^^^^
[INFO] [stdout]     |                       |                   |
[INFO] [stdout]     |                       |                   this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     |                       |                   up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                       |                   `#9` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     |                       up until Edition 2021 `#13` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     |                       up until Edition 2021 `#14` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                       `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 955 |                     ManagedProxyConfig::Https(proxy) => Some(proxy.tls_status),
[INFO] [stdout]     |                                               -----
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               `proxy` calls a custom destructor
[INFO] [stdout]     |                                               `proxy` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 960 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 969 |                 state: counters.state.read().await.clone(),
[INFO] [stdout]     |                        ---------------------------
[INFO] [stdout]     |                        |                     |
[INFO] [stdout]     |                        |                     this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     |                        |                     `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                        `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     |                        `#11` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `shared_proxy` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `shared_proxy` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `proxy` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `proxy` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:424:27
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]     |                         ----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `protection` calls a custom destructor
[INFO] [stdout]     |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout] 424 |                     match protection.try_acquire_source(peer_addr) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 435 |                 };
[INFO] [stdout]     |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> crates/runtime/src/source_guards.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl Drop for SourceQuotaLease {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:438:27
[INFO] [stdout]      |
[INFO] [stdout]  437 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]      |                         ----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `protection` calls a custom destructor
[INFO] [stdout]      |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout]  438 |                     match protection.try_acquire_handshake() {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  450 |                 };
[INFO] [stdout]      |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/semaphore.rs:1202:1
[INFO] [stdout]      |
[INFO] [stdout] 1202 | impl Drop for OwnedSemaphorePermit {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/supervisor.rs:458:41
[INFO] [stdout]     |
[INFO] [stdout] 452 | /             tokio::select! {
[INFO] [stdout] 453 | |                 ctrl_c = tokio::signal::ctrl_c() => {
[INFO] [stdout] 454 | |                     ctrl_c?;
[INFO] [stdout] 455 | |                     break;
[INFO] [stdout] ...   |
[INFO] [stdout] 458 | |                     if let Err(error) = supervisor.reload().await {
[INFO] [stdout]     | |                                -----    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     | |                                |        |                   |
[INFO] [stdout]     | |                                |        |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                                |        |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                |        |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     | |                                |        |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                                |        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                |        `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                                |        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                `error` calls a custom destructor
[INFO] [stdout]     | |                                `error` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 462 | |             }
[INFO] [stdout]     | |             -
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             `futures_init` calls a custom destructor
[INFO] [stdout]     | |             `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |             `futures` calls a custom destructor
[INFO] [stdout]     | |_____________`futures` will be dropped later as of Edition 2024
[INFO] [stdout]     |               now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/supervisor.rs:791:19
[INFO] [stdout]      |
[INFO] [stdout]  790 |           for (name, spec) in start_specs {
[INFO] [stdout]      |                      ----     -----------
[INFO] [stdout]      |                      |        |
[INFO] [stdout]      |                      |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                      `spec` calls a custom destructor
[INFO] [stdout]      |                      `spec` will be dropped later as of Edition 2024
[INFO] [stdout]  791 |               match start_managed_listener(
[INFO] [stdout]      |  ___________________^
[INFO] [stdout]  792 | |                 name.clone(),
[INFO] [stdout]  793 | |                 spec.clone(),
[INFO] [stdout]  794 | |                 Arc::clone(&self.shared.state),
[INFO] [stdout] ...    |
[INFO] [stdout]  797 | |             .await
[INFO] [stdout]      | |              ----^
[INFO] [stdout]      | |              |   |
[INFO] [stdout]      | |              |   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |              |   up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  800 |                   Err(error) => {
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `error` calls a custom destructor
[INFO] [stdout]      |                       `error` will be dropped later as of Edition 2024
[INFO] [stdout]  801 |                       for (_started_name, listener) in started {
[INFO] [stdout]      |                                                        -------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        `iter` calls a custom destructor
[INFO] [stdout]      |                                                        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  802 |                           let _ = listener.shutdown().await;
[INFO] [stdout]      |                                   -------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  805 |                       let mut inner = self.shared.inner.lock().await;
[INFO] [stdout]      |                           ---------   ------------------------------
[INFO] [stdout]      |                           |           |                        |
[INFO] [stdout]      |                           |           |                        this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                           |           |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                           |           `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           `inner` calls a custom destructor
[INFO] [stdout]      |                           `inner` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  812 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `spec` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `spec` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `iter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `inner` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/source_guards.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/overload_management.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/benches/performance_scenarios.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/benches/dataplane_envelope.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1273:15
[INFO] [stdout]      |
[INFO] [stdout] 1271 |     let mut last_error: Option<DynError> = None;
[INFO] [stdout]      |         --------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_error` calls a custom destructor
[INFO] [stdout]      |         `last_error` will be dropped later as of Edition 2024
[INFO] [stdout] 1272 |     for _attempt in 0..3 {
[INFO] [stdout] 1273 |         match measure_http1_to_http3_bridge_throughput_once(requests).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                                                       |
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               |                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               `__awaitee` calls a custom destructor
[INFO] [stdout]      |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1277 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `last_error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1587:23
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                 let acceptor = TlsAcceptor::from(identity.server);
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `acceptor` calls a custom destructor
[INFO] [stdout]      |                     `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] 1587 |                 match acceptor.accept(downstream).await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                           |
[INFO] [stdout]      |                       |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1596 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1587:51
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                 let acceptor = TlsAcceptor::from(identity.server);
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `acceptor` calls a custom destructor
[INFO] [stdout]      |                     `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] 1587 |                 match acceptor.accept(downstream).await {
[INFO] [stdout]      |                                                   ^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1596 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1643:39
[INFO] [stdout]      |
[INFO] [stdout] 1636 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1643 |                 if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1646 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1635:38
[INFO] [stdout]      |
[INFO] [stdout] 1635 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 1636 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1643 |                 if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                           --------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `send` calls a custom destructor
[INFO] [stdout]      |                           `send` will be dropped later as of Edition 2024
[INFO] [stdout] 1644 |                     let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                             ---------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1645 |                 }
[INFO] [stdout] 1646 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1757:38
[INFO] [stdout]      |
[INFO] [stdout] 1757 |               while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                              ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                              |         |                   |
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                              |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                              |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                              |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              `result` calls a custom destructor
[INFO] [stdout]      |                              `result` will be dropped later as of Edition 2024
[INFO] [stdout] 1758 |                   let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                           --------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `_request` calls a custom destructor
[INFO] [stdout]      |                           `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1761 | /                 tasks.spawn(async move {
[INFO] [stdout] 1762 | |                     time::sleep(delay).await;
[INFO] [stdout] 1763 | |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout] 1764 | |                     if let Ok(response) = response {
[INFO] [stdout] ...    |
[INFO] [stdout] 1769 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1770 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1875:29
[INFO] [stdout]      |
[INFO] [stdout] 1875 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                             ^^^^^^^^^^^^-----
[INFO] [stdout]      |                             |           |
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `__awaitee` calls a custom destructor
[INFO] [stdout]      |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 1876 |         let chunk = chunk?;
[INFO] [stdout]      |             -----   ------
[INFO] [stdout]      |             |       |
[INFO] [stdout]      |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |             `chunk` calls a custom destructor
[INFO] [stdout]      |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 1877 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]      |         --------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1878 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 1879 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating binaries/lb-k8s-controller/src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1273:15
[INFO] [stdout]      |
[INFO] [stdout] 1271 |     let mut last_error: Option<DynError> = None;
[INFO] [stdout]      |         --------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_error` calls a custom destructor
[INFO] [stdout]      |         `last_error` will be dropped later as of Edition 2024
[INFO] [stdout] 1272 |     for _attempt in 0..3 {
[INFO] [stdout] 1273 |         match measure_http1_to_http3_bridge_throughput_once(requests).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                                                       |
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               |                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               `__awaitee` calls a custom destructor
[INFO] [stdout]      |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1277 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `last_error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1587:23
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                 let acceptor = TlsAcceptor::from(identity.server);
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `acceptor` calls a custom destructor
[INFO] [stdout]      |                     `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] 1587 |                 match acceptor.accept(downstream).await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                           |
[INFO] [stdout]      |                       |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1596 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1587:51
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                 let acceptor = TlsAcceptor::from(identity.server);
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `acceptor` calls a custom destructor
[INFO] [stdout]      |                     `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] 1587 |                 match acceptor.accept(downstream).await {
[INFO] [stdout]      |                                                   ^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1596 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1643:39
[INFO] [stdout]      |
[INFO] [stdout] 1636 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1643 |                 if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1646 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1635:38
[INFO] [stdout]      |
[INFO] [stdout] 1635 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 1636 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1643 |                 if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                           --------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `send` calls a custom destructor
[INFO] [stdout]      |                           `send` will be dropped later as of Edition 2024
[INFO] [stdout] 1644 |                     let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                             ---------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1645 |                 }
[INFO] [stdout] 1646 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1757:38
[INFO] [stdout]      |
[INFO] [stdout] 1757 |               while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                              ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                              |         |                   |
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                              |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                              |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                              |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              `result` calls a custom destructor
[INFO] [stdout]      |                              `result` will be dropped later as of Edition 2024
[INFO] [stdout] 1758 |                   let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                           --------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `_request` calls a custom destructor
[INFO] [stdout]      |                           `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1761 | /                 tasks.spawn(async move {
[INFO] [stdout] 1762 | |                     time::sleep(delay).await;
[INFO] [stdout] 1763 | |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout] 1764 | |                     if let Ok(response) = response {
[INFO] [stdout] ...    |
[INFO] [stdout] 1769 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1770 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/benches/../dev-support/performance_harness.rs:1875:29
[INFO] [stdout]      |
[INFO] [stdout] 1875 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                             ^^^^^^^^^^^^-----
[INFO] [stdout]      |                             |           |
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `__awaitee` calls a custom destructor
[INFO] [stdout]      |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 1876 |         let chunk = chunk?;
[INFO] [stdout]      |             -----   ------
[INFO] [stdout]      |             |       |
[INFO] [stdout]      |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |             `chunk` calls a custom destructor
[INFO] [stdout]      |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 1877 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]      |         --------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1878 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 1879 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/telemetry.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/soak_chaos.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/soak_chaos.rs:373:43
[INFO] [stdout]      |
[INFO] [stdout]  367 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    -------------------------
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  371 |                 let response = Response::builder().status(status).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout]  372 |                 if let Ok(response) = response {
[INFO] [stdout]  373 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |           |
[INFO] [stdout]      |                               |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout]  374 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  375 |                     }
[INFO] [stdout]  376 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/test-support/tests/snapshot_restore_smoke.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/soak_chaos.rs:367:38
[INFO] [stdout]      |
[INFO] [stdout]  367 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout]  368 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  371 |                 let response = Response::builder().status(status).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout]  372 |                 if let Ok(response) = response {
[INFO] [stdout]  373 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout]  374 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  377 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/tests/soak_chaos.rs:551:29
[INFO] [stdout]     |
[INFO] [stdout] 551 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |           |
[INFO] [stdout]     |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 552 |         let chunk = chunk?;
[INFO] [stdout]     |             -----   ------
[INFO] [stdout]     |             |       |
[INFO] [stdout]     |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `chunk` calls a custom destructor
[INFO] [stdout]     |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 553 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]     |         --------------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 554 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 555 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/grpc_hardening.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed binaries/lb-ctl/src/main.rs (3 fixes)
[INFO] [stderr]    Migrating crates/runtime/tests/tracing.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/grpc_hardening.rs:243:38
[INFO] [stdout]      |
[INFO] [stdout]  243 |               while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                              ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                              |         |                   |
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                              |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                              |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                              |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              `result` calls a custom destructor
[INFO] [stdout]      |                              `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  248 | /                 tasks.spawn(async move {
[INFO] [stdout]  249 | |                     let request_id = request
[INFO] [stdout]  250 | |                         .headers()
[INFO] [stdout]  251 | |                         .get("x-request-id")
[INFO] [stdout] ...    |
[INFO] [stdout]  284 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  285 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/tests/grpc_hardening.rs:257:45
[INFO] [stdout]     |
[INFO] [stdout] 257 |                     while let Some(chunk) = body.data().await {
[INFO] [stdout]     |                                    -----    ^^^^^^^^^^^^-----
[INFO] [stdout]     |                                    |        |           |
[INFO] [stdout]     |                                    |        |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                    |        |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                    |        |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                    |        |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    |        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                    |        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                    |        `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                    |        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    `chunk` calls a custom destructor
[INFO] [stdout]     |                                    `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 258 |                         let Ok(chunk) = chunk else {
[INFO] [stdout]     |                                -----
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 261 |                         if body.flow_control().release_capacity(chunk.len()).is_err() {
[INFO] [stdout]     |                            -------------------------------------------------
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 265 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/grpc_hardening.rs:307:38
[INFO] [stdout]      |
[INFO] [stdout]  307 |               while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                              ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                              |         |                   |
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                              |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                              |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                              |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              `result` calls a custom destructor
[INFO] [stdout]      |                              `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  313 | /                 tasks.spawn(async move {
[INFO] [stdout]  314 | |                     let mut body = request.into_body();
[INFO] [stdout]  315 | |                     let mut bytes = Vec::new();
[INFO] [stdout]  316 | |                     while let Some(chunk) = body.data().await {
[INFO] [stdout] ...    |
[INFO] [stdout]  361 | |                     let _ = send.send_trailers(trailers);
[INFO] [stdout]  362 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  363 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/tests/grpc_hardening.rs:316:45
[INFO] [stdout]     |
[INFO] [stdout] 316 |                     while let Some(chunk) = body.data().await {
[INFO] [stdout]     |                                    -----    ^^^^^^^^^^^^-----
[INFO] [stdout]     |                                    |        |           |
[INFO] [stdout]     |                                    |        |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                    |        |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                    |        |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                    |        |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    |        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                    |        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                    |        `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                    |        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    `chunk` calls a custom destructor
[INFO] [stdout]     |                                    `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 317 |                         let Ok(chunk) = chunk else {
[INFO] [stdout]     |                                -----
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 320 |                         if body.flow_control().release_capacity(chunk.len()).is_err() {
[INFO] [stdout]     |                            -------------------------------------------------
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                            `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 324 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/tests/grpc_hardening.rs:476:29
[INFO] [stdout]     |
[INFO] [stdout] 476 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |           |
[INFO] [stdout]     |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 477 |         let chunk = chunk?;
[INFO] [stdout]     |             -----   ------
[INFO] [stdout]     |             |       |
[INFO] [stdout]     |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `chunk` calls a custom destructor
[INFO] [stdout]     |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 478 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]     |         --------------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 479 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 480 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/test-support/tests/https_listener_tls_smoke.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/examples/performance_envelope.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1273:15
[INFO] [stdout]      |
[INFO] [stdout] 1271 |     let mut last_error: Option<DynError> = None;
[INFO] [stdout]      |         --------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_error` calls a custom destructor
[INFO] [stdout]      |         `last_error` will be dropped later as of Edition 2024
[INFO] [stdout] 1272 |     for _attempt in 0..3 {
[INFO] [stdout] 1273 |         match measure_http1_to_http3_bridge_throughput_once(requests).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                                                       |
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               |                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               |                                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               `__awaitee` calls a custom destructor
[INFO] [stdout]      |               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1277 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `last_error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1587:23
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                 let acceptor = TlsAcceptor::from(identity.server);
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `acceptor` calls a custom destructor
[INFO] [stdout]      |                     `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] 1587 |                 match acceptor.accept(downstream).await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                           |
[INFO] [stdout]      |                       |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1596 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1587:51
[INFO] [stdout]      |
[INFO] [stdout] 1586 |                 let acceptor = TlsAcceptor::from(identity.server);
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `acceptor` calls a custom destructor
[INFO] [stdout]      |                     `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] 1587 |                 match acceptor.accept(downstream).await {
[INFO] [stdout]      |                                                   ^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1596 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-0.23.37/src/crypto/tls13.rs:248:1
[INFO] [stdout]      |
[INFO] [stdout]  248 | impl Drop for OkmBlock {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1643:39
[INFO] [stdout]      |
[INFO] [stdout] 1636 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1643 |                 if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1646 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/upstream_balancer.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1635:38
[INFO] [stdout]      |
[INFO] [stdout] 1635 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 1636 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1639 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1643 |                 if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                           --------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `send` calls a custom destructor
[INFO] [stdout]      |                           `send` will be dropped later as of Edition 2024
[INFO] [stdout] 1644 |                     let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                             ---------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1645 |                 }
[INFO] [stdout] 1646 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1757:38
[INFO] [stdout]      |
[INFO] [stdout] 1757 |               while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                              ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                              |         |                   |
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                              |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                              |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                              |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              `result` calls a custom destructor
[INFO] [stdout]      |                              `result` will be dropped later as of Edition 2024
[INFO] [stdout] 1758 |                   let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                           --------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `_request` calls a custom destructor
[INFO] [stdout]      |                           `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1761 | /                 tasks.spawn(async move {
[INFO] [stdout] 1762 | |                     time::sleep(delay).await;
[INFO] [stdout] 1763 | |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout] 1764 | |                     if let Ok(response) = response {
[INFO] [stdout] ...    |
[INFO] [stdout] 1769 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1770 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/examples/../dev-support/performance_harness.rs:1875:29
[INFO] [stdout]      |
[INFO] [stdout] 1875 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                             ^^^^^^^^^^^^-----
[INFO] [stdout]      |                             |           |
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `__awaitee` calls a custom destructor
[INFO] [stdout]      |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 1876 |         let chunk = chunk?;
[INFO] [stdout]      |             -----   ------
[INFO] [stdout]      |             |       |
[INFO] [stdout]      |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |             `chunk` calls a custom destructor
[INFO] [stdout]      |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 1877 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]      |         --------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1878 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 1879 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/upstream_registry.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/test-support/tests/example_configs.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/diagnostics.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/local_limits.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/upstream_health.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/http3.rs:141:32
[INFO] [stdout]     |
[INFO] [stdout] 141 |       while let Some(resolver) = h3_conn.accept().await.map_err(io::Error::other)? {
[INFO] [stdout]     |                                  ----------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |                |
[INFO] [stdout]     |                                  |                this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                                  |                up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                  |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                  |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                  this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                                  up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                  this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                                  up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                                  `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                  `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 142 |           let (request, mut stream) = resolver.resolve_request().await.map_err(io::Error::other)?;
[INFO] [stdout]     |                         ----------    -----------------------------------------------------------
[INFO] [stdout]     |                         |             |                          |
[INFO] [stdout]     |                         |             |                          this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                         |             |                          `#5` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                         |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                         |             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         |             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                         |             `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                         `stream` calls a custom destructor
[INFO] [stdout]     |                         `stream` will be dropped later as of Edition 2024
[INFO] [stdout] 143 |           request_count += 1;
[INFO] [stdout] 144 | /         handle_http3_request(listener_name, state, &proxy, remote_addr, request, &mut stream)
[INFO] [stdout] 145 | |             .await?;
[INFO] [stdout]     | |                  -
[INFO] [stdout]     | |                  |
[INFO] [stdout]     | |__________________this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                    `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 146 |       }
[INFO] [stdout]     |       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]     |
[INFO] [stdout] 225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `stream` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `stream` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h3-0.0.8/src/server/stream.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | impl Drop for RequestEnd {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/once_lock.rs:699:0
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/recv_stream.rs:506:1
[INFO] [stdout]     |
[INFO] [stdout] 506 | impl Drop for RecvStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/quinn-0.11.9/src/send_stream.rs:344:1
[INFO] [stdout]     |
[INFO] [stdout] 344 | impl Drop for SendStream {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed binaries/lb-dataplane/src/workspace_serve/tests.rs (61 fixes)
[INFO] [stderr]    Migrating crates/test-support/tests/k8s_controller_packaging.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed binaries/lb-dataplane/src/main.rs (10 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/http3.rs:185:33
[INFO] [stdout]     |
[INFO] [stdout] 185 |     while let Some(mut chunk) = stream.recv_data().await.map_err(io::Error::other)? {
[INFO] [stdout]     |                    ---------    ------------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                    |            |                  |
[INFO] [stdout]     |                    |            |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                    |            |                  up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    |            |                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                    |            |                  `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                    |            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                    |            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    |            this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                    |            up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                    |            `__awaitee` calls a custom destructor
[INFO] [stdout]     |                    |            `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     |                    `chunk` calls a custom destructor
[INFO] [stdout]     |                    `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 186 |         let chunk_bytes = chunk.copy_to_bytes(chunk.remaining());
[INFO] [stdout]     |             -----------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `chunk_bytes` calls a custom destructor
[INFO] [stdout]     |             `chunk_bytes` will be dropped later as of Edition 2024
[INFO] [stdout] 187 |         request_body.extend_from_slice(&chunk_bytes);
[INFO] [stdout] 188 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `chunk_bytes` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:257:27
[INFO] [stdout]     |
[INFO] [stdout] 256 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]     |                         ----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `protection` calls a custom destructor
[INFO] [stdout]     |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout] 257 |                     match protection.try_acquire_source(downstream_addr) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 268 |                 };
[INFO] [stdout]     |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> crates/runtime/src/source_guards.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl Drop for SourceQuotaLease {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:271:27
[INFO] [stdout]      |
[INFO] [stdout]  270 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]      |                         ----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `protection` calls a custom destructor
[INFO] [stdout]      |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout]  271 |                     match protection.try_acquire_handshake() {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  283 |                 };
[INFO] [stdout]      |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/semaphore.rs:1202:1
[INFO] [stdout]      |
[INFO] [stdout] 1202 | impl Drop for OwnedSemaphorePermit {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:587:6
[INFO] [stdout]     |
[INFO] [stdout] 571 |     let acceptor = TlsAcceptor::from(Arc::clone(&config.tls_server_config));
[INFO] [stdout]     |         --------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `acceptor` calls a custom destructor
[INFO] [stdout]     |         `acceptor` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 587 |     .await
[INFO] [stdout]     |      ^^^^^
[INFO] [stdout]     |      |
[INFO] [stdout]     |      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 588 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `acceptor` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/supervisor.rs:954:23
[INFO] [stdout]     |
[INFO] [stdout] 941 |             (shared_proxy, admin_tls_status),
[INFO] [stdout]     |              ------------
[INFO] [stdout]     |              |
[INFO] [stdout]     |              `shared_proxy` calls a custom destructor
[INFO] [stdout]     |              `shared_proxy` will be dropped later as of Edition 2024
[INFO] [stdout] 942 |             lifecycle,
[INFO] [stdout] 943 |         ) in listeners
[INFO] [stdout]     |              ---------
[INFO] [stdout]     |              |
[INFO] [stdout]     |              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |              `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 951 |             let abuse_snapshot = abuse_protection.read().await.snapshot();
[INFO] [stdout]     |                                  -----------------------------
[INFO] [stdout]     |                                  |                       |
[INFO] [stdout]     |                                  |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                  |                       `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                  `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                  `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 952 |             let abuse_policy = abuse_policy.read().await.clone();
[INFO] [stdout]     |                                -------------------------
[INFO] [stdout]     |                                |                   |
[INFO] [stdout]     |                                |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                                |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                                `#4` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                                `#5` will be dropped later as of Edition 2024
[INFO] [stdout] 953 |             let tls = if let Some(shared_proxy) = shared_proxy {
[INFO] [stdout]     |                                   ------------
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                                   `#7` will be dropped later as of Edition 2024
[INFO] [stdout] 954 |                 match shared_proxy.read().await.clone() {
[INFO] [stdout]     |                       -------------------------^^^^^^^^
[INFO] [stdout]     |                       |                   |
[INFO] [stdout]     |                       |                   this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]     |                       |                   up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       |                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                       |                   `#9` will be dropped later as of Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]     |                       up until Edition 2021 `#13` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]     |                       up until Edition 2021 `#14` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                       this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                       `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 955 |                     ManagedProxyConfig::Https(proxy) => Some(proxy.tls_status),
[INFO] [stdout]     |                                               -----
[INFO] [stdout]     |                                               |
[INFO] [stdout]     |                                               `proxy` calls a custom destructor
[INFO] [stdout]     |                                               `proxy` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 960 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 969 |                 state: counters.state.read().await.clone(),
[INFO] [stdout]     |                        ---------------------------
[INFO] [stdout]     |                        |                     |
[INFO] [stdout]     |                        |                     this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]     |                        |                     `#12` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                        `#10` will be dropped later as of Edition 2024
[INFO] [stdout]     |                        this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]     |                        `#11` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#13` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `shared_proxy` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `shared_proxy` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `proxy` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `proxy` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:424:27
[INFO] [stdout]     |
[INFO] [stdout] 423 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]     |                         ----------
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         `protection` calls a custom destructor
[INFO] [stdout]     |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout] 424 |                     match protection.try_acquire_source(peer_addr) {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                           |
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 435 |                 };
[INFO] [stdout]     |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> crates/runtime/src/source_guards.rs:230:1
[INFO] [stdout]     |
[INFO] [stdout] 230 | impl Drop for SourceQuotaLease {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]     |
[INFO] [stdout] 178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/listener_runtime.rs:438:27
[INFO] [stdout]      |
[INFO] [stdout]  437 |                     let protection = abuse_protection.read().await;
[INFO] [stdout]      |                         ----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `protection` calls a custom destructor
[INFO] [stdout]      |                         `protection` will be dropped later as of Edition 2024
[INFO] [stdout]  438 |                     match protection.try_acquire_handshake() {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  450 |                 };
[INFO] [stdout]      |                  - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/semaphore.rs:1202:1
[INFO] [stdout]      |
[INFO] [stdout] 1202 | impl Drop for OwnedSemaphorePermit {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `protection` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> binaries/lb-dataplane/src/workspace_serve/supervisor.rs:458:41
[INFO] [stdout]     |
[INFO] [stdout] 452 | /             tokio::select! {
[INFO] [stdout] 453 | |                 ctrl_c = tokio::signal::ctrl_c() => {
[INFO] [stdout] 454 | |                     ctrl_c?;
[INFO] [stdout] 455 | |                     break;
[INFO] [stdout] ...   |
[INFO] [stdout] 458 | |                     if let Err(error) = supervisor.reload().await {
[INFO] [stdout]     | |                                -----    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     | |                                |        |                   |
[INFO] [stdout]     | |                                |        |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     | |                                |        |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                |        |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     | |                                |        |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     | |                                |        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     | |                                |        `__awaitee` calls a custom destructor
[INFO] [stdout]     | |                                |        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]     | |                                `error` calls a custom destructor
[INFO] [stdout]     | |                                `error` will be dropped later as of Edition 2024
[INFO] [stdout] ...   |
[INFO] [stdout] 462 | |             }
[INFO] [stdout]     | |             -
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             `futures_init` calls a custom destructor
[INFO] [stdout]     | |             `futures_init` will be dropped later as of Edition 2024
[INFO] [stdout]     | |             `futures` calls a custom destructor
[INFO] [stdout]     | |_____________`futures` will be dropped later as of Edition 2024
[INFO] [stdout]     |               now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `__awaitee` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/supervisor.rs:791:19
[INFO] [stdout]      |
[INFO] [stdout]  790 |           for (name, spec) in start_specs {
[INFO] [stdout]      |                      ----     -----------
[INFO] [stdout]      |                      |        |
[INFO] [stdout]      |                      |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      |        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                      `spec` calls a custom destructor
[INFO] [stdout]      |                      `spec` will be dropped later as of Edition 2024
[INFO] [stdout]  791 |               match start_managed_listener(
[INFO] [stdout]      |  ___________________^
[INFO] [stdout]  792 | |                 name.clone(),
[INFO] [stdout]  793 | |                 spec.clone(),
[INFO] [stdout]  794 | |                 Arc::clone(&self.shared.state),
[INFO] [stdout] ...    |
[INFO] [stdout]  797 | |             .await
[INFO] [stdout]      | |              ----^
[INFO] [stdout]      | |              |   |
[INFO] [stdout]      | |              |   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      | |              |   up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  800 |                   Err(error) => {
[INFO] [stdout]      |                       -----
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `error` calls a custom destructor
[INFO] [stdout]      |                       `error` will be dropped later as of Edition 2024
[INFO] [stdout]  801 |                       for (_started_name, listener) in started {
[INFO] [stdout]      |                                                        -------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        `iter` calls a custom destructor
[INFO] [stdout]      |                                                        `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  802 |                           let _ = listener.shutdown().await;
[INFO] [stdout]      |                                   -------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                   `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  805 |                       let mut inner = self.shared.inner.lock().await;
[INFO] [stdout]      |                           ---------   ------------------------------
[INFO] [stdout]      |                           |           |                        |
[INFO] [stdout]      |                           |           |                        this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                           |           |                        `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                           |           `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           `inner` calls a custom destructor
[INFO] [stdout]      |                           `inner` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  812 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `spec` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `spec` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `error` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `iter` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/watch.rs:1458:1
[INFO] [stdout]      |
[INFO] [stdout] 1458 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `inner` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:6748:45
[INFO] [stdout]      |
[INFO] [stdout] 6748 |               while let Ok((mut stream, _)) = listener.accept().await {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                               |                 |
[INFO] [stdout]      |                                               |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                               |                 up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                               |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 6749 |                   let counter = Arc::clone(&counter_for_task);
[INFO] [stdout] 6750 | /                 tokio::spawn(async move {
[INFO] [stdout] 6751 | |                     let mut buffer = [0_u8; 2048];
[INFO] [stdout] 6752 | |                     let _ = stream.read(&mut buffer).await;
[INFO] [stdout] 6753 | |                     let count = counter.fetch_add(1, Ordering::SeqCst) + 1;
[INFO] [stdout] ...    |
[INFO] [stdout] 6760 | |                     let _ = stream.shutdown().await;
[INFO] [stdout] 6761 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 6762 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:6840:45
[INFO] [stdout]      |
[INFO] [stdout] 6840 |               while let Ok((mut stream, _)) = listener.accept().await {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                               |                 |
[INFO] [stdout]      |                                               |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                               |                 up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                               |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 6841 |                   let counter = Arc::clone(&counter_for_task);
[INFO] [stdout] 6842 | /                 tokio::spawn(async move {
[INFO] [stdout] 6843 | |                     let mut buffer = [0_u8; 2048];
[INFO] [stdout] 6844 | |                     let _ = stream.read(&mut buffer).await;
[INFO] [stdout] 6845 | |                     let count = counter.fetch_add(1, Ordering::SeqCst) + 1;
[INFO] [stdout] ...    |
[INFO] [stdout] 6852 | |                     let _ = stream.shutdown().await;
[INFO] [stdout] 6853 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 6854 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:6876:47
[INFO] [stdout]      |
[INFO] [stdout] 6870 |                 while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                                ------    -------------------------
[INFO] [stdout]      |                                |         |                   |
[INFO] [stdout]      |                                |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `result` calls a custom destructor
[INFO] [stdout]      |                                `result` will be dropped later as of Edition 2024
[INFO] [stdout] 6871 |                     let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                             --------  -----------
[INFO] [stdout]      |                             |         |
[INFO] [stdout]      |                             |         `respond` calls a custom destructor
[INFO] [stdout]      |                             |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `_request` calls a custom destructor
[INFO] [stdout]      |                             `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6874 |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                         --------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `response` calls a custom destructor
[INFO] [stdout]      |                         `response` will be dropped later as of Edition 2024
[INFO] [stdout] 6875 |                     if let Ok(response) = response {
[INFO] [stdout] 6876 |                         if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                   --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |           |
[INFO] [stdout]      |                                   |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `send` calls a custom destructor
[INFO] [stdout]      |                                   `send` will be dropped later as of Edition 2024
[INFO] [stdout] 6877 |                             let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                     ---------------------------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 6878 |                         }
[INFO] [stdout] 6879 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:6870:42
[INFO] [stdout]      |
[INFO] [stdout] 6870 |                 while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                                ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |         |                   |
[INFO] [stdout]      |                                |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `result` calls a custom destructor
[INFO] [stdout]      |                                `result` will be dropped later as of Edition 2024
[INFO] [stdout] 6871 |                     let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                             --------  -----------
[INFO] [stdout]      |                             |         |
[INFO] [stdout]      |                             |         `respond` calls a custom destructor
[INFO] [stdout]      |                             |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `_request` calls a custom destructor
[INFO] [stdout]      |                             `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6874 |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                         --------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `response` calls a custom destructor
[INFO] [stdout]      |                         `response` will be dropped later as of Edition 2024
[INFO] [stdout] 6875 |                     if let Ok(response) = response {
[INFO] [stdout] 6876 |                         if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                   --------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `send` calls a custom destructor
[INFO] [stdout]      |                                   `send` will be dropped later as of Edition 2024
[INFO] [stdout] 6877 |                             let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                     ---------------------------------------------------
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6880 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:6917:33
[INFO] [stdout]      |
[INFO] [stdout] 6917 |         while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                                 ^^^^^^^^^^^^-----
[INFO] [stdout]      |                                 |           |
[INFO] [stdout]      |                                 |           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 |           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                 |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                 up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 6918 |             let chunk = chunk.map_err(to_dyn_error)?;
[INFO] [stdout]      |                 -----   ----------------------------
[INFO] [stdout]      |                 |       |
[INFO] [stdout]      |                 |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 `chunk` calls a custom destructor
[INFO] [stdout]      |                 `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 6919 |             bytes.extend_from_slice(&chunk);
[INFO] [stdout] 6920 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:7424:37
[INFO] [stdout]      |
[INFO] [stdout] 7424 |             while let Some(mut chunk) = request_stream
[INFO] [stdout]      |  __________________________---------____^
[INFO] [stdout]      | |  ________________________|____________|
[INFO] [stdout]      | | |                        |
[INFO] [stdout]      | | |                        `chunk` calls a custom destructor
[INFO] [stdout]      | | |                        `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 7425 | | |             .recv_data()
[INFO] [stdout] 7426 | | |             .await
[INFO] [stdout]      | | |              -----
[INFO] [stdout]      | | |              |   |
[INFO] [stdout]      | | |______________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |                up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 7427 | |               .map_err(|error| to_dyn_error(format!("http3 recv body failed: {error}")))?
[INFO] [stdout]      | |                                                                                         ^
[INFO] [stdout]      | |                                                                                         |
[INFO] [stdout]      | |                                                                                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |                                                                                         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |_________________________________________________________________________________________this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 7428 |             {
[INFO] [stdout] 7429 |                 let chunk_bytes = chunk.copy_to_bytes(chunk.remaining());
[INFO] [stdout]      |                     -----------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `chunk_bytes` calls a custom destructor
[INFO] [stdout]      |                     `chunk_bytes` will be dropped later as of Edition 2024
[INFO] [stdout] 7430 |                 body.extend_from_slice(&chunk_bytes);
[INFO] [stdout] 7431 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `chunk_bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> binaries/lb-dataplane/src/workspace_serve/tests.rs:6727:45
[INFO] [stdout]      |
[INFO] [stdout] 6727 |               while let Ok((mut stream, _)) = listener.accept().await {
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                               |                 |
[INFO] [stdout]      |                                               |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                               |                 up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                               |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                               `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                               `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 6728 | /                 tokio::spawn(async move {
[INFO] [stdout] 6729 | |                     let mut buffer = [0_u8; 2048];
[INFO] [stdout] 6730 | |                     let _ = stream.read(&mut buffer).await;
[INFO] [stdout] 6731 | |                     let response = format!(
[INFO] [stdout] ...    |
[INFO] [stdout] 6736 | |                     let _ = stream.shutdown().await;
[INFO] [stdout] 6737 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 6738 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]      |
[INFO] [stdout]  357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/failure_management.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/http2_proxy.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/tests/http1_proxy.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2173:38
[INFO] [stdout]      |
[INFO] [stdout] 2173 |               while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                              ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                              |         |                   |
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                              |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                              |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                              |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                              |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                              `result` calls a custom destructor
[INFO] [stdout]      |                              `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2177 | /                 tasks.spawn(async move {
[INFO] [stdout] 2178 | |                     let path = request.uri().path().to_string();
[INFO] [stdout] 2179 | |                     if path == "/slow" {
[INFO] [stdout] 2180 | |                         time::sleep(Duration::from_millis(150)).await;
[INFO] [stdout] ...    |
[INFO] [stdout] 2189 | |                 });
[INFO] [stdout]      | |                  -
[INFO] [stdout]      | |                  |
[INFO] [stdout]      | |__________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 2190 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2216:41
[INFO] [stdout]      |
[INFO] [stdout] 2210 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    -------------------------
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2211 |                 let Ok((request, mut respond)) = result else {
[INFO] [stdout]      |                                  -----------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  `respond` calls a custom destructor
[INFO] [stdout]      |                                  `respond` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2214 |                 let mut body = request.into_body();
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `body` calls a custom destructor
[INFO] [stdout]      |                     `body` will be dropped later as of Edition 2024
[INFO] [stdout] 2215 |                 let mut total = 0_usize;
[INFO] [stdout] 2216 |                 while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                                -----    ^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |        |           |
[INFO] [stdout]      |                                |        |           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                |        |           up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |        |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |        |           `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                |        up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `chunk` calls a custom destructor
[INFO] [stdout]      |                                `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 2217 |                     let Ok(chunk) = chunk else {
[INFO] [stdout]      |                            -----
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2220 |                     if body.flow_control().release_capacity(chunk.len()).is_err() {
[INFO] [stdout]      |                        -------------------------------------------------
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                        `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2224 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2225 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2226 |                 if let Ok(response) = response {
[INFO] [stdout] 2227 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2228 |                         let payload = Bytes::from(format!("received={total}"));
[INFO] [stdout] 2229 |                         let _ = send.send_data(payload, true);
[INFO] [stdout]      |                                 -----------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                 `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `body` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2216:41
[INFO] [stdout]      |
[INFO] [stdout] 2216 |                 while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                                -----    ^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |        |           |
[INFO] [stdout]      |                                |        |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                |        |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |        |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |        |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                |        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |        `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |        `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `chunk` calls a custom destructor
[INFO] [stdout]      |                                `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 2217 |                     let Ok(chunk) = chunk else {
[INFO] [stdout]      |                            -----
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2220 |                     if body.flow_control().release_capacity(chunk.len()).is_err() {
[INFO] [stdout]      |                        -------------------------------------------------
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                        `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2224 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2227:43
[INFO] [stdout]      |
[INFO] [stdout] 2210 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    -------------------------
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2211 |                 let Ok((request, mut respond)) = result else {
[INFO] [stdout]      |                                  -----------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  `respond` calls a custom destructor
[INFO] [stdout]      |                                  `respond` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2214 |                 let mut body = request.into_body();
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `body` calls a custom destructor
[INFO] [stdout]      |                     `body` will be dropped later as of Edition 2024
[INFO] [stdout] 2215 |                 let mut total = 0_usize;
[INFO] [stdout] 2216 |                 while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                                -----    -----------------
[INFO] [stdout]      |                                |        |           |
[INFO] [stdout]      |                                |        |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |        |           `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `chunk` calls a custom destructor
[INFO] [stdout]      |                                `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 2217 |                     let Ok(chunk) = chunk else {
[INFO] [stdout]      |                            -----
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2220 |                     if body.flow_control().release_capacity(chunk.len()).is_err() {
[INFO] [stdout]      |                        -------------------------------------------------
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                        `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2225 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2226 |                 if let Ok(response) = response {
[INFO] [stdout] 2227 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |           |
[INFO] [stdout]      |                               |           this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                               |           up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2228 |                         let payload = Bytes::from(format!("received={total}"));
[INFO] [stdout] 2229 |                         let _ = send.send_data(payload, true);
[INFO] [stdout]      |                                 -----------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                 `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2230 |                     }
[INFO] [stdout] 2231 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `body` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2210:38
[INFO] [stdout]      |
[INFO] [stdout] 2210 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#8` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                            |         up until Edition 2021 `#7` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2211 |                 let Ok((request, mut respond)) = result else {
[INFO] [stdout]      |                                  -----------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  `respond` calls a custom destructor
[INFO] [stdout]      |                                  `respond` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2214 |                 let mut body = request.into_body();
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `body` calls a custom destructor
[INFO] [stdout]      |                     `body` will be dropped later as of Edition 2024
[INFO] [stdout] 2215 |                 let mut total = 0_usize;
[INFO] [stdout] 2216 |                 while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                                -----    -----------------
[INFO] [stdout]      |                                |        |           |
[INFO] [stdout]      |                                |        |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |        |           `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                |        `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `chunk` calls a custom destructor
[INFO] [stdout]      |                                `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 2217 |                     let Ok(chunk) = chunk else {
[INFO] [stdout]      |                            -----
[INFO] [stdout]      |                            |
[INFO] [stdout]      |                            this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2220 |                     if body.flow_control().release_capacity(chunk.len()).is_err() {
[INFO] [stdout]      |                        -------------------------------------------------
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                        `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2225 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2226 |                 if let Ok(response) = response {
[INFO] [stdout] 2227 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2228 |                         let payload = Bytes::from(format!("received={total}"));
[INFO] [stdout] 2229 |                         let _ = send.send_data(payload, true);
[INFO] [stdout]      |                                 -----------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                 `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2232 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `body` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2250:38
[INFO] [stdout]      |
[INFO] [stdout] 2250 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                            |         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2251 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2255 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2279:43
[INFO] [stdout]      |
[INFO] [stdout] 2273 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    -------------------------
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2274 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2277 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2278 |                 if let Ok(response) = response {
[INFO] [stdout] 2279 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |           |
[INFO] [stdout]      |                               |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2280 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 2281 |                     }
[INFO] [stdout] 2282 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2273:38
[INFO] [stdout]      |
[INFO] [stdout] 2273 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2274 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2277 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2278 |                 if let Ok(response) = response {
[INFO] [stdout] 2279 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2280 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2283 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2319:47
[INFO] [stdout]      |
[INFO] [stdout] 2312 |                 while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                                ------    -------------------------
[INFO] [stdout]      |                                |         |                   |
[INFO] [stdout]      |                                |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `result` calls a custom destructor
[INFO] [stdout]      |                                `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2313 |                     let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                             --------  -----------
[INFO] [stdout]      |                             |         |
[INFO] [stdout]      |                             |         `respond` calls a custom destructor
[INFO] [stdout]      |                             |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `_request` calls a custom destructor
[INFO] [stdout]      |                             `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2317 |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                         --------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `response` calls a custom destructor
[INFO] [stdout]      |                         `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2318 |                     if let Ok(response) = response {
[INFO] [stdout] 2319 |                         if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                   --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |           |
[INFO] [stdout]      |                                   |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                   `send` calls a custom destructor
[INFO] [stdout]      |                                   `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2320 |                             let _ =
[INFO] [stdout] 2321 |                                 send.send_data(Bytes::from(format!("conn-{connection_id}")), true);
[INFO] [stdout]      |                                 ------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 2322 |                         }
[INFO] [stdout] 2323 |                     }
[INFO] [stdout]      |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2312:42
[INFO] [stdout]      |
[INFO] [stdout] 2312 |                 while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                                ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                                |         |                   |
[INFO] [stdout]      |                                |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                `result` calls a custom destructor
[INFO] [stdout]      |                                `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2313 |                     let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                             --------  -----------
[INFO] [stdout]      |                             |         |
[INFO] [stdout]      |                             |         `respond` calls a custom destructor
[INFO] [stdout]      |                             |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             `_request` calls a custom destructor
[INFO] [stdout]      |                             `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2317 |                     let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                         --------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `response` calls a custom destructor
[INFO] [stdout]      |                         `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2318 |                     if let Ok(response) = response {
[INFO] [stdout] 2319 |                         if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                                   --------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `send` calls a custom destructor
[INFO] [stdout]      |                                   `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2320 |                             let _ =
[INFO] [stdout] 2321 |                                 send.send_data(Bytes::from(format!("conn-{connection_id}")), true);
[INFO] [stdout]      |                                 ------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2328 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2359:43
[INFO] [stdout]      |
[INFO] [stdout] 2345 |             let Ok((stream, _)) = listener.accept().await else {
[INFO] [stdout]      |                                   -----------------------
[INFO] [stdout]      |                                   |                 |
[INFO] [stdout]      |                                   |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2348 |             let mut connection = match server::handshake(stream).await {
[INFO] [stdout]      |                 --------------         -------------------------------
[INFO] [stdout]      |                 |                      |                         |
[INFO] [stdout]      |                 |                      |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                 |                      |                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 |                      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 |                      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 |                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                 |                      `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 `connection` calls a custom destructor
[INFO] [stdout]      |                 `connection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2353 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    -------------------------
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                            |         |                   `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                            |         `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2354 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2357 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2358 |                 if let Ok(response) = response {
[INFO] [stdout] 2359 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |           |
[INFO] [stdout]      |                               |           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                               |           up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2360 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                 `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 2361 |                     }
[INFO] [stdout] 2362 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `connection` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/connection.rs:600:1
[INFO] [stdout]      |
[INFO] [stdout]  600 | / impl<T, P, B> Drop for Connection<T, P, B>
[INFO] [stdout]  601 | | where
[INFO] [stdout]  602 | |     P: Peer,
[INFO] [stdout]  603 | |     B: Buf,
[INFO] [stdout]      | |___________^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/connection.rs:600:1
[INFO] [stdout]      |
[INFO] [stdout]  600 | / impl<T, P, B> Drop for Connection<T, P, B>
[INFO] [stdout]  601 | | where
[INFO] [stdout]  602 | |     P: Peer,
[INFO] [stdout]  603 | |     B: Buf,
[INFO] [stdout]      | |___________^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.44/src/span.rs:1455:1
[INFO] [stdout]      |
[INFO] [stdout] 1455 | impl Drop for Span {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/connection.rs:600:1
[INFO] [stdout]      |
[INFO] [stdout]  600 | / impl<T, P, B> Drop for Connection<T, P, B>
[INFO] [stdout]  601 | | where
[INFO] [stdout]  602 | |     P: Peer,
[INFO] [stdout]  603 | |     B: Buf,
[INFO] [stdout]      | |___________^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2353:38
[INFO] [stdout]      |
[INFO] [stdout] 2353 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2354 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2357 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2358 |                 if let Ok(response) = response {
[INFO] [stdout] 2359 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2360 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2363 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2353:38
[INFO] [stdout]      |
[INFO] [stdout] 2345 |             let Ok((stream, _)) = listener.accept().await else {
[INFO] [stdout]      |                                   -----------------------
[INFO] [stdout]      |                                   |                 |
[INFO] [stdout]      |                                   |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2348 |             let mut connection = match server::handshake(stream).await {
[INFO] [stdout]      |                 --------------         -------------------------------
[INFO] [stdout]      |                 |                      |                         |
[INFO] [stdout]      |                 |                      |                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                 |                      |                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 |                      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                 |                      `#3` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 |                      this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                 |                      `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 `connection` calls a custom destructor
[INFO] [stdout]      |                 `connection` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2353 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                            |         |                   `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                            |         up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                            |         `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2354 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2357 |                 let response = Response::builder().status(StatusCode::OK).body(());
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] 2358 |                 if let Ok(response) = response {
[INFO] [stdout] 2359 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2360 |                         let _ = send.send_data(Bytes::from(body.to_string()), true);
[INFO] [stdout]      |                                 ---------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                 `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2363 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `connection` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/connection.rs:600:1
[INFO] [stdout]      |
[INFO] [stdout]  600 | / impl<T, P, B> Drop for Connection<T, P, B>
[INFO] [stdout]  601 | | where
[INFO] [stdout]  602 | |     P: Peer,
[INFO] [stdout]  603 | |     B: Buf,
[INFO] [stdout]      | |___________^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/connection.rs:600:1
[INFO] [stdout]      |
[INFO] [stdout]  600 | / impl<T, P, B> Drop for Connection<T, P, B>
[INFO] [stdout]  601 | | where
[INFO] [stdout]  602 | |     P: Peer,
[INFO] [stdout]  603 | |     B: Buf,
[INFO] [stdout]      | |___________^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.44/src/span.rs:1455:1
[INFO] [stdout]      |
[INFO] [stdout] 1455 | impl Drop for Span {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/connection.rs:600:1
[INFO] [stdout]      |
[INFO] [stdout]  600 | / impl<T, P, B> Drop for Connection<T, P, B>
[INFO] [stdout]  601 | | where
[INFO] [stdout]  602 | |     P: Peer,
[INFO] [stdout]  603 | |     B: Buf,
[INFO] [stdout]      | |___________^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2391:43
[INFO] [stdout]      |
[INFO] [stdout] 2381 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    -------------------------
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2382 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2385 |                 let response = Response::builder()
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2391 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |           |
[INFO] [stdout]      |                               |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                               |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2392 |                         let _ = send.send_data(Bytes::from_static(b"ok"), true);
[INFO] [stdout]      |                                 -----------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 2393 |                     }
[INFO] [stdout] 2394 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2381:38
[INFO] [stdout]      |
[INFO] [stdout] 2381 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                            |         up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2382 |                 let Ok((_request, mut respond)) = result else {
[INFO] [stdout]      |                         --------  -----------
[INFO] [stdout]      |                         |         |
[INFO] [stdout]      |                         |         `respond` calls a custom destructor
[INFO] [stdout]      |                         |         `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `_request` calls a custom destructor
[INFO] [stdout]      |                         `_request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2385 |                 let response = Response::builder()
[INFO] [stdout]      |                     --------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `response` calls a custom destructor
[INFO] [stdout]      |                     `response` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2391 |                     if let Ok(mut send) = respond.send_response(response, false) {
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `send` calls a custom destructor
[INFO] [stdout]      |                               `send` will be dropped later as of Edition 2024
[INFO] [stdout] 2392 |                         let _ = send.send_data(Bytes::from_static(b"ok"), true);
[INFO] [stdout]      |                                 -----------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2395 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `response` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `response` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2508:29
[INFO] [stdout]      |
[INFO] [stdout] 2508 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]      |                             ^^^^^^^^^^^^-----
[INFO] [stdout]      |                             |           |
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                             `__awaitee` calls a custom destructor
[INFO] [stdout]      |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 2509 |         let chunk = chunk?;
[INFO] [stdout]      |             -----   ------
[INFO] [stdout]      |             |       |
[INFO] [stdout]      |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |             `chunk` calls a custom destructor
[INFO] [stdout]      |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 2510 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]      |         --------------------------------------------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 2511 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 2512 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2633:43
[INFO] [stdout]      |
[INFO] [stdout] 2608 |                 let Ok((request, mut respond)) = result else {
[INFO] [stdout]      |                         -------  -----------
[INFO] [stdout]      |                         |        |
[INFO] [stdout]      |                         |        `respond` calls a custom destructor
[INFO] [stdout]      |                         |        `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `request` calls a custom destructor
[INFO] [stdout]      |                         `request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2633 |                 if let Some(capture_tx) = capture_tx.take() {
[INFO] [stdout]      |                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2636 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/oneshot.rs:871:1
[INFO] [stdout]      |
[INFO] [stdout]  871 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/tests/http2_proxy.rs:2607:38
[INFO] [stdout]      |
[INFO] [stdout] 2607 |             while let Some(result) = connection.accept().await {
[INFO] [stdout]      |                            ------    ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                            |         |                   |
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                            |         |                   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                            |         |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            |         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                            |         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                            |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                            |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                            `result` calls a custom destructor
[INFO] [stdout]      |                            `result` will be dropped later as of Edition 2024
[INFO] [stdout] 2608 |                 let Ok((request, mut respond)) = result else {
[INFO] [stdout]      |                         -------  -----------
[INFO] [stdout]      |                         |        |
[INFO] [stdout]      |                         |        `respond` calls a custom destructor
[INFO] [stdout]      |                         |        `respond` will be dropped later as of Edition 2024
[INFO] [stdout]      |                         `request` calls a custom destructor
[INFO] [stdout]      |                         `request` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2630 |                 if let Ok(mut send_stream) = respond.send_response(response, false) {
[INFO] [stdout]      |                           ---------------    --------------------------------------
[INFO] [stdout]      |                           |                  |
[INFO] [stdout]      |                           |                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                           |                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                           `send_stream` calls a custom destructor
[INFO] [stdout]      |                           `send_stream` will be dropped later as of Edition 2024
[INFO] [stdout] 2631 |                     let _ = send_stream.send_data(Bytes::from_static(b"ok"), true);
[INFO] [stdout]      |                             ------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2636 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `respond` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send_stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `send_stream` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/tests/http2_proxy.rs:465:29
[INFO] [stdout]     |
[INFO] [stdout] 465 |     while let Some(frame) = first_body.data().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |                 |
[INFO] [stdout]     |                             |                 this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |                 up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 466 |         let _ = frame?;
[INFO] [stdout]     |                 ------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                 `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 467 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/tests/http2_proxy.rs:953:29
[INFO] [stdout]     |
[INFO] [stdout] 953 |     while let Some(chunk) = body.data().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |           |
[INFO] [stdout]     |                             |           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                             |           up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |           `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                             `__awaitee` calls a custom destructor
[INFO] [stdout]     |                             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 954 |         let chunk = chunk?;
[INFO] [stdout]     |             -----   ------
[INFO] [stdout]     |             |       |
[INFO] [stdout]     |             |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |             |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |             `chunk` calls a custom destructor
[INFO] [stdout]     |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] 955 |         body.flow_control().release_capacity(chunk.len())?;
[INFO] [stdout]     |         --------------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 956 |         bytes.extend_from_slice(&chunk);
[INFO] [stdout] 957 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/hedging.rs:137:11
[INFO] [stdout]     |
[INFO] [stdout]  59 |     let mut primary_handle = tokio::spawn(primary_attempt());
[INFO] [stdout]     |         ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `primary_handle` calls a custom destructor
[INFO] [stdout]     |         `primary_handle` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |     let (winner, first_error) = tokio::select! {
[INFO] [stdout]     |                  -----------
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  `first_error` calls a custom destructor
[INFO] [stdout]     |                  `first_error` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 137 |     match hedge_handle.await.expect("hedge task must not panic") {
[INFO] [stdout]     |           ^^^^^^^^^^^^^-----^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |           |            |
[INFO] [stdout]     |           |            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |           |            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 147 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `primary_handle` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/listener_runtime.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/hedging.rs:137:24
[INFO] [stdout]     |
[INFO] [stdout]  59 |     let mut primary_handle = tokio::spawn(primary_attempt());
[INFO] [stdout]     |         ------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `primary_handle` calls a custom destructor
[INFO] [stdout]     |         `primary_handle` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  91 |     let (winner, first_error) = tokio::select! {
[INFO] [stdout]     |                  -----------
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  `first_error` calls a custom destructor
[INFO] [stdout]     |                  `first_error` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 137 |     match hedge_handle.await.expect("hedge task must not panic") {
[INFO] [stdout]     |                        ^^^^^
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 147 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `primary_handle` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/join.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | impl<T> Drop for JoinHandle<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/stream_forwarding.rs:333:27
[INFO] [stdout]      |
[INFO] [stdout]  296 |                   let (upstream_client, had_prior_successful_stream) = match upstream_clients
[INFO] [stdout]      |      __________________---------------_________________________________-_____-
[INFO] [stdout]      |  ___|__________________|_______________________________________________|
[INFO] [stdout]      | |   |                  |
[INFO] [stdout]      | |   |                  `upstream_client` calls a custom destructor
[INFO] [stdout]      | |   |                  `upstream_client` will be dropped later as of Edition 2024
[INFO] [stdout]  297 | |   |                 .ensure_client(&selected_upstream.target, &effective_timeouts)
[INFO] [stdout]  298 | |   |                 .await
[INFO] [stdout]      | |   |                  -----
[INFO] [stdout]      | |   |                  |   |
[INFO] [stdout]      | |   |                  |   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |   |                  |   `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |   |__________________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |                      |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                      this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                      `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout]  327 | |                 };
[INFO] [stdout]      | |                 -
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |_________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  328 |
[INFO] [stdout]  329 |                   let upstream_request =
[INFO] [stdout]      |                       ----------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       `upstream_request` calls a custom destructor
[INFO] [stdout]      |                       `upstream_request` will be dropped later as of Edition 2024
[INFO] [stdout]  330 |                       match retryable_upstream_request.clone() { Some(upstream_request) => {
[INFO] [stdout]      |                             ----------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                             `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  333 |                           match build_upstream_request(
[INFO] [stdout]      |      ___________________________^
[INFO] [stdout]      |     |___________________________|
[INFO] [stdout]  334 |     |                         &request,
[INFO] [stdout]  335 |     |                         request_host_override.as_deref(),
[INFO] [stdout]  336 |     |                         effective_client_ip,
[INFO] [stdout]  337 |     |                         selected_upstream.target.address,
[INFO] [stdout]  338 |     |                     ) {
[INFO] [stdout]      |     |                     ^
[INFO] [stdout]      |     |_____________________|
[INFO] [stdout]      |     |_____________________this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                           up until Edition 2021 `#12` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  347 |     |                 }};
[INFO] [stdout]      |     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...        |
[INFO] [stdout]  351 |     |             let mut send_request = upstream_client.send_request.lock().await;
[INFO] [stdout]      |     |                                    -----------------------------------------
[INFO] [stdout]      |     |                                    |                                   |
[INFO] [stdout]      |     |                                    |                                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |     |                                    |                                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout]      |     |                                    this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |     |                                    `#5` will be dropped later as of Edition 2024
[INFO] [stdout]  352 |     |             if let Err(error) = poll_fn(|cx| send_request.poll_ready(cx)).await {
[INFO] [stdout]      |     |                        -----    -----------------------------------------------
[INFO] [stdout]      |     |                        |        |                                         |
[INFO] [stdout]      |     |                        |        |                                         this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |     |                        |        |                                         `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |     |                        |        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |     |                        |        `#7` will be dropped later as of Edition 2024
[INFO] [stdout]      |     |                        `error` calls a custom destructor
[INFO] [stdout]      |     |                        `error` will be dropped later as of Edition 2024
[INFO] [stdout]  353 |     |                 drop(send_request);
[INFO] [stdout]  354 |     |                 upstream_clients.remove_client(&selected_upstream.target).await;
[INFO] [stdout]      |     |                 ---------------------------------------------------------------
[INFO] [stdout]      |     |                 |
[INFO] [stdout]      |     |                 this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |     |                 `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...        |
[INFO] [stdout]  396 |     |                 Err(error) => {
[INFO] [stdout]      |     |                     -----
[INFO] [stdout]      |     |                     |
[INFO] [stdout]      |     |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |     |                     `#10` will be dropped later as of Edition 2024
[INFO] [stdout]  397 |     |                     drop(send_request);
[INFO] [stdout]  398 |     |                     upstream_clients.remove_client(&selected_upstream.target).await;
[INFO] [stdout]      |     |                     ---------------------------------------------------------------
[INFO] [stdout]      |     |                     |
[INFO] [stdout]      |     |                     this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |     |                     `#11` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#12` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout]      = note: `upstream_request` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `upstream_request` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/sync/mutex.rs:964:1
[INFO] [stdout]      |
[INFO] [stdout]  964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `error` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/stream_forwarding.rs:384:19
[INFO] [stdout]      |
[INFO] [stdout]  296 |             let (upstream_client, had_prior_successful_stream) = match upstream_clients
[INFO] [stdout]      |                  ---------------
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  `upstream_client` calls a custom destructor
[INFO] [stdout]      |                  `upstream_client` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  384 |             match send_request.send_request(upstream_request, request_end_stream) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  428 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `upstream_client` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1044:1
[INFO] [stdout]      |
[INFO] [stdout] 1044 | / impl<B, P> Drop for Streams<B, P>
[INFO] [stdout] 1045 | | where
[INFO] [stdout] 1046 | |     P: Peer,
[INFO] [stdout]      | |____________^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:75:9
[INFO] [stdout]      |
[INFO] [stdout]   75 |           time::timeout(idle_timeout, recv_stream.data()).await.map_err(|_| match direction {
[INFO] [stdout]      |           ^----------------------------------------------------
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `__awaitee` calls a custom destructor
[INFO] [stdout]      |  _________`__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |
[INFO] [stdout]   76 | |             StreamBodyDirection::Request => {
[INFO] [stdout]   77 | |                 StreamForwardError::IdleTimeout(StreamIdlePhase::RequestBody)
[INFO] [stdout] ...    |
[INFO] [stdout]   82 | |         })?
[INFO] [stdout]      | |           ^
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   83 |       {
[INFO] [stdout]   84 |           let chunk = chunk.map_err(|_| match direction {
[INFO] [stdout]      |  _____________-----___-
[INFO] [stdout]      |  _____________|_______|
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `chunk` calls a custom destructor
[INFO] [stdout]      | |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]   85 | |             StreamBodyDirection::Request => StreamForwardError::RequestBody,
[INFO] [stdout]   86 | |             StreamBodyDirection::Response => StreamForwardError::ResponseBody,
[INFO] [stdout]   87 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  100 | |         send_bytes_chunked(send_stream, chunk, false, direction).await?;
[INFO] [stdout]      | |         --------------------------------------------------------------
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  101 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:10:9
[INFO] [stdout]      |
[INFO] [stdout]   10 |           time::timeout(idle_timeout, recv_stream.data()).await.map_err(|_| match direction {
[INFO] [stdout]      |           ^----------------------------------------------------
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `__awaitee` calls a custom destructor
[INFO] [stdout]      |  _________`__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |
[INFO] [stdout]   11 | |             StreamBodyDirection::Request => {
[INFO] [stdout]   12 | |                 StreamForwardError::IdleTimeout(StreamIdlePhase::RequestBody)
[INFO] [stdout] ...    |
[INFO] [stdout]   17 | |         })?
[INFO] [stdout]      | |           ^
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |           this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |           up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |             up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]   18 |       {
[INFO] [stdout]   19 |           let chunk = chunk.map_err(|_| match direction {
[INFO] [stdout]      |  _____________-----___-
[INFO] [stdout]      |  _____________|_______|
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `chunk` calls a custom destructor
[INFO] [stdout]      | |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]   20 | |             StreamBodyDirection::Request => StreamForwardError::RequestBody,
[INFO] [stdout]   21 | |             StreamBodyDirection::Response => StreamForwardError::ResponseBody,
[INFO] [stdout]   22 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   34 | |         send_bytes_chunked(send_stream, chunk, false, direction).await?;
[INFO] [stdout]      | |         --------------------------------------------------------------
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |         this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |         `#3` will be dropped later as of Edition 2024
[INFO] [stdout]   35 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:142:9
[INFO] [stdout]      |
[INFO] [stdout]  142 |           time::timeout(idle_timeout, recv_stream.data()).await.map_err(|_| match direction {
[INFO] [stdout]      |           ^----------------------------------------------------
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           |                                               `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |           `__awaitee` calls a custom destructor
[INFO] [stdout]      |  _________`__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |
[INFO] [stdout]  143 | |             StreamBodyDirection::Request => {
[INFO] [stdout]  144 | |                 StreamForwardError::IdleTimeout(StreamIdlePhase::RequestBody)
[INFO] [stdout] ...    |
[INFO] [stdout]  149 | |         })?
[INFO] [stdout]      | |           ^
[INFO] [stdout]      | |           |
[INFO] [stdout]      | |           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |           up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |             up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  150 |       {
[INFO] [stdout]  151 |           let chunk = chunk.map_err(|_| match direction {
[INFO] [stdout]      |  _____________-----___-
[INFO] [stdout]      |  _____________|_______|
[INFO] [stdout]      | |             |
[INFO] [stdout]      | |             `chunk` calls a custom destructor
[INFO] [stdout]      | |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout]  152 | |             StreamBodyDirection::Request => StreamForwardError::RequestBody,
[INFO] [stdout]  153 | |             StreamBodyDirection::Response => StreamForwardError::ResponseBody,
[INFO] [stdout]  154 | |         })?;
[INFO] [stdout]      | |           -
[INFO] [stdout]      | |___________|
[INFO] [stdout]      | |___________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |             `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  167 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/connection_proxy.rs:41:30
[INFO] [stdout]      |
[INFO] [stdout]   41 |       while let Some(result) = downstream_connection.accept().await {
[INFO] [stdout]      |                      ------    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                      |         |                              |
[INFO] [stdout]      |                      |         |                              this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                      |         |                              up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                      |         |                              this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                      |         |                              `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                      |         this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                      |         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                      |         `__awaitee` calls a custom destructor
[INFO] [stdout]      |                      |         `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      |                      `result` calls a custom destructor
[INFO] [stdout]      |                      `result` will be dropped later as of Edition 2024
[INFO] [stdout]   42 |           let (request, respond) = match result {
[INFO] [stdout]      |  __________________________________-
[INFO] [stdout]   43 | |             Ok(stream) => stream,
[INFO] [stdout]   44 | |             Err(error) => {
[INFO] [stdout]      | |                 -----
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |                 `error` calls a custom destructor
[INFO] [stdout]      | |                 `error` will be dropped later as of Edition 2024
[INFO] [stdout]   45 | |                 let had_traffic = metrics.request_count.load(Ordering::SeqCst) > 0;
[INFO] [stdout] ...    |
[INFO] [stdout]   52 | |         };
[INFO] [stdout]      | |         -
[INFO] [stdout]      | |         |
[INFO] [stdout]      | |_________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   58 | /         stream_tasks.spawn(async move {
[INFO] [stdout]   59 | |             handle_http2_stream(
[INFO] [stdout]   60 | |                 request,
[INFO] [stdout]   61 | |                 respond,
[INFO] [stdout] ...    |
[INFO] [stdout]   68 | |             .await;
[INFO] [stdout]   69 | |         });
[INFO] [stdout]      | |          -
[INFO] [stdout]      | |__________|
[INFO] [stdout]      | |__________this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |            `#3` will be dropped later as of Edition 2024
[INFO] [stdout]   70 | |     }
[INFO] [stdout]      | |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `result` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/proto/streams/streams.rs:1447:1
[INFO] [stdout]      |
[INFO] [stdout] 1447 | impl Drop for OpaqueStreamRef {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.3.27/src/share.rs:480:1
[INFO] [stdout]      |
[INFO] [stdout]  480 | impl Drop for RecvStream {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `error` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/task/abort.rs:93:1
[INFO] [stdout]      |
[INFO] [stdout]   93 | impl Drop for AbortHandle {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/http2_proxy/connection_proxy.rs:72:30
[INFO] [stdout]     |
[INFO] [stdout]  72 |     while let Some(result) = stream_tasks.join_next().await {
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                              |                        |
[INFO] [stdout]     |                              |                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                              |                        up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                              |                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                              |                        `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                              this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                              up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                              `__awaitee` calls a custom destructor
[INFO] [stdout]     |                              `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  73 |         result.map_err(Http2ProxyError::StreamTask)?;
[INFO] [stdout]     |         --------------------------------------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |         `#2` will be dropped later as of Edition 2024
[INFO] [stdout]  74 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http2_proxy/body_relay.rs:268:29
[INFO] [stdout]      |
[INFO] [stdout]  268 |         while let Some(chunk) = time::timeout(idle_timeout, recv_stream.data())
[INFO] [stdout]      |    _____________________________^
[INFO] [stdout]      |  _|_____________________________|
[INFO] [stdout]  269 | | |         .await
[INFO] [stdout]      | | |          -----
[INFO] [stdout]      | | |          |   |
[INFO] [stdout]      | | |__________|___`__awaitee` calls a custom destructor
[INFO] [stdout]      | |            |   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]      | |            this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |            up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |            `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  270 | |           .map_err(|_| StreamForwardError::IdleTimeout(StreamIdlePhase::ResponseBody))?
[INFO] [stdout]      | |                                                                                       ^
[INFO] [stdout]      | |                                                                                       |
[INFO] [stdout]      | |                                                                                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                                                                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |_______________________________________________________________________________________this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                                                                         up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]  271 |         {
[INFO] [stdout]  272 |             let chunk = chunk.map_err(|_| StreamForwardError::ResponseBody)?;
[INFO] [stdout]      |                 -----   ----------------------------------------------------
[INFO] [stdout]      |                 |       |
[INFO] [stdout]      |                 |       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                 |       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                 `chunk` calls a custom destructor
[INFO] [stdout]      |                 `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  277 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.51.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/extension_surface.rs:428:11
[INFO] [stdout]     |
[INFO] [stdout] 422 |     let (sender, receiver) = mpsc::channel();
[INFO] [stdout]     |                  --------
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  `receiver` calls a custom destructor
[INFO] [stdout]     |                  `receiver` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 428 |     match receiver.recv_timeout(timeout) {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 445 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `receiver` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/mpmc/mod.rs:1411:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/http1_proxy/cache_lookup.rs:64:11
[INFO] [stdout]     |
[INFO] [stdout]  29 |     let key_material = match build_http_cache_key_material(
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `key_material` calls a custom destructor
[INFO] [stdout]     |         `key_material` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  59 |     let storage_key = match key_material.storage_key() {
[INFO] [stdout]     |         -----------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `storage_key` calls a custom destructor
[INFO] [stdout]     |         `storage_key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  64 |     match response_cache.store.lookup(now, &storage_key) {
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |           |
[INFO] [stdout]     |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 105 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_material` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `storage_key` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> crates/runtime/src/http_cache.rs:845:35
[INFO] [stdout]     |
[INFO] [stdout] 845 |             if let Some(record) = state.entries.remove(key) {
[INFO] [stdout]     |                         ------    ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                         |         |
[INFO] [stdout]     |                         |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                         `record` calls a custom destructor
[INFO] [stdout]     |                         `record` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 848 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `record` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> crates/runtime/src/http_cache.rs:1025:31
[INFO] [stdout]      |
[INFO] [stdout] 1022 |         let Some(key) = oldest_entry_key(state) else {
[INFO] [stdout]      |                  ---
[INFO] [stdout]      |                  |
[INFO] [stdout]      |                  `key` calls a custom destructor
[INFO] [stdout]      |                  `key` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1025 |         if let Some(record) = state.entries.remove(&key) {
[INFO] [stdout]      |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1029 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating crates/runtime/tests/property_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/runtime/benches/http_cache.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/admin-api/src/cache.rs (3 fixes)
[INFO] [stderr]    Migrating crates/test-support/tests/workspace_smoke.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed crates/admin-api/src/cache_transport.rs (3 fixes)
[INFO] [stderr]    Migrating crates/runtime/tests/tcp_proxy.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating crates/test-support/tests/upgrade_rollback_smoke.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 17s
[INFO] [stderr] crater-edition-check: lb-runtime v0.1.0 (/opt/rustwide/workdir/crates/runtime) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-config-model v0.1.0 (/opt/rustwide/workdir/crates/config-model) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-net-core v0.1.0 (/opt/rustwide/workdir/crates/net-core) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-proto-http v0.1.0 (/opt/rustwide/workdir/crates/proto-http) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-observability v0.1.0 (/opt/rustwide/workdir/crates/observability) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-proto-tls v0.1.0 (/opt/rustwide/workdir/crates/proto-tls) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-test-support v0.1.0 (/opt/rustwide/workdir/crates/test-support) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-admin-api v0.1.0 (/opt/rustwide/workdir/crates/admin-api) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-k8s-integration v0.1.0 (/opt/rustwide/workdir/crates/k8s-integration) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-dataplane v0.1.0 (/opt/rustwide/workdir/binaries/lb-dataplane) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-ctl v0.1.0 (/opt/rustwide/workdir/binaries/lb-ctl) updating edition from 2021 to 2024
[INFO] [stderr] crater-edition-check: lb-k8s-controller v0.1.0 (/opt/rustwide/workdir/binaries/lb-k8s-controller) updating edition from 2021 to 2024
[INFO] [stderr]     Checking lb-net-core v0.1.0 (/opt/rustwide/workdir/crates/net-core)
[INFO] [stderr]     Checking lb-proto-tls v0.1.0 (/opt/rustwide/workdir/crates/proto-tls)
[INFO] [stderr]     Checking lb-observability v0.1.0 (/opt/rustwide/workdir/crates/observability)
[INFO] [stderr]     Checking lb-proto-http v0.1.0 (/opt/rustwide/workdir/crates/proto-http)
[INFO] [stderr]     Checking lb-config-model v0.1.0 (/opt/rustwide/workdir/crates/config-model)
[INFO] [stderr]     Checking lb-runtime v0.1.0 (/opt/rustwide/workdir/crates/runtime)
[INFO] [stderr]     Checking lb-admin-api v0.1.0 (/opt/rustwide/workdir/crates/admin-api)
[INFO] [stderr]     Checking lb-test-support v0.1.0 (/opt/rustwide/workdir/crates/test-support)
[INFO] [stderr]     Checking lb-k8s-integration v0.1.0 (/opt/rustwide/workdir/crates/k8s-integration)
[INFO] [stderr]     Checking lb-ctl v0.1.0 (/opt/rustwide/workdir/binaries/lb-ctl)
[INFO] [stderr]     Checking lb-dataplane v0.1.0 (/opt/rustwide/workdir/binaries/lb-dataplane)
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> binaries/lb-ctl/src/main.rs:344:9
[INFO] [stdout]     |
[INFO] [stdout] 344 |         unsafe { std::env::set_var("LB_CTL_ADMIN_SECRET", "viewer-secret") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-F unsafe-code`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> binaries/lb-ctl/src/main.rs:346:9
[INFO] [stdout]     |
[INFO] [stdout] 346 |         unsafe { std::env::set_var("LB_CTL_OPERATOR_SECRET", "operator-secret") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> binaries/lb-ctl/src/main.rs:348:9
[INFO] [stdout]     |
[INFO] [stdout] 348 | /         unsafe { std::env::set_var(
[INFO] [stdout] 349 | |             "LB_CONTROL_PLANE_SIGNING_KEY_ED25519",
[INFO] [stdout] 350 | |             lb_test_support::TEST_SIGNING_KEY_ED25519,
[INFO] [stdout] 351 | |         ) };
[INFO] [stdout]     | |___________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lb-ctl` (bin "lb-ctl" test) due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290", kill_on_drop: false }`
[INFO] [stdout] 92e7dd137c661575c9c82e15c81a6969a7915f2a0c4f69b45b9e22377dfe5290
